/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package logic;

import java.io.Serializable;

/**
 * Clase Boleto, encargada de almacenar el nroTicket, statos, id del comprador y 
 * un flag booleano que indica si el ticket es ganador o no
 * @author Victoria Fuenmayor y José Gabriel Rivera.
 */
public class Boleto implements Serializable{
    private int nroTicket;
    private int status;
    private int idComprador;
    private boolean ganador;
    
    /**
     * Constructor de Boleto, inicializa el numero de ticket con el valor que reicbe
     * por parámetro, el status por defecto en 1 (disponible), el idComprador por
     * defecto en -1 (sin comprador) y el flag de ganador por defecto en false.
     * @param nroTicket 
     */
    public Boleto(int nroTicket){
        this.nroTicket = nroTicket;
        this.status = 1;
        this.idComprador = -1;
        this.ganador = false;
    }

    /**
     * Retorna el número de ticket que tiene el boleto. 
     * @return nro de Ticket(entero)
     */
    public int getNroTicket() {
        return nroTicket;
    }

    /**
     * Retorna el estatus en el que se encuentra el boleto.
     * (1 = disponible, 2 = reservado, 3 = comprado)
     * @return estatus (tipo entero) 
     */  
    public int getStatus() {
        return status;
    }

    /**
     * Coloca el estado del ticket de acuerdo al parametro que recibe.
     * (1 = disponible, 2 = reservado, 3 = comprado)
     * @param status 
     */   
    public void setStatus(int status) {
        this.status = status;
    }

    /**
     * Retorna el identificador del comprador.
     * @return ID del comprador (tipo entero)
     */
    public int getIdComprador() {
        return idComprador;
    }

    /**
     * Setea el ID del comprador.
     * NOTA: El ID debe coincidir con alguna posición libre del arreglo.
     * @param idComprador 
     */
    public void setIdComprador(int idComprador) {
        this.idComprador = idComprador;
    }

    /**
     * Retorna true si existe un ganador, en caso contrario retorna false.
     * @return ganador (boolean)
     */
    public boolean isGanador() {
        return ganador;
    }

    /**
     * Recibe true o false en caso de existir un ganador.
     * @param ganador 
     */
    public void setGanador(boolean ganador) {
        this.ganador = ganador;
    }
        
}
